/* $NetBSD: xenbus.h,v 1.3 2006/05/07 10:56:37 bouyer Exp $ */
/*****************************************************************************
 * xenbus.h
 *
 * Xenbus protocol details.
 *
 * Copyright (C) 2005 XenSource Ltd.
 */

#ifndef _XEN_PUBLIC_IO_XENBUS_H
#define _XEN_PUBLIC_IO_XENBUS_H

/* The state of either end of the Xenbus, i.e. the current communication
   status of initialisation across the bus.  States here imply nothing about
   the state of the connection between the driver and the kernel's device
   layers.  */
typedef enum
{
  XenbusStateUnknown      = 0,
  XenbusStateInitialising = 1,
  XenbusStateInitWait     = 2,  /* Finished early initialisation, but waiting
                                   for information from the peer or hotplug
				   scripts. */
  XenbusStateInitialised  = 3,  /* Initialised and waiting for a connection
				   from the peer. */
  XenbusStateConnected    = 4,
  XenbusStateClosing      = 5,  /* The device is being closed due to an error
				   or an unplug event. */
  XenbusStateClosed       = 6

} XenbusState;

#endif /* _XEN_PUBLIC_IO_XENBUS_H */

/*
 * Local variables:
 *  c-file-style: "linux"
 *  indent-tabs-mode: t
 *  c-indent-level: 8
 *  c-basic-offset: 8
 *  tab-width: 8
 * End:
 */
